\section{Class List}
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1BackgroundImage}{Ship\+C\+A\+D\+::\+Background\+Image} \\*Background Images for a viewport }{\pageref{classShipCAD_1_1BackgroundImage}}{}
\item\contentsline{section}{\hyperlink{structCalculateSplineArea}{Calculate\+Spline\+Area} }{\pageref{structCalculateSplineArea}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ChooseColorDialogData}{Ship\+C\+A\+D\+::\+Choose\+Color\+Dialog\+Data} \\*Color chooser dialog exchange }{\pageref{structShipCAD_1_1ChooseColorDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ChooseLayerDialogData}{Ship\+C\+A\+D\+::\+Choose\+Layer\+Dialog\+Data} \\*Layer chooser dialog exchange }{\pageref{structShipCAD_1_1ChooseLayerDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ColorChanger}{Ship\+C\+A\+D\+::\+Color\+Changer} \\*Original and new color in preferences dialog exchange }{\pageref{structShipCAD_1_1ColorChanger}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1CompareControlPointZOrder}{Ship\+C\+A\+D\+::\+Compare\+Control\+Point\+Z\+Order} }{\pageref{structShipCAD_1_1CompareControlPointZOrder}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ControlFaceGrid}{Ship\+C\+A\+D\+::\+Control\+Face\+Grid} }{\pageref{structShipCAD_1_1ControlFaceGrid}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Controller}{Ship\+C\+A\+D\+::\+Controller} \\*\hyperlink{namespaceShipCAD}{Ship\+C\+AD} model controller, contains editing actions }{\pageref{classShipCAD_1_1Controller}}{}
\item\contentsline{section}{\hyperlink{unionconvert__type__t}{convert\+\_\+type\+\_\+t} }{\pageref{unionconvert__type__t}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1CPointGrid}{Ship\+C\+A\+D\+::\+C\+Point\+Grid} }{\pageref{structShipCAD_1_1CPointGrid}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1CrosscurvesData}{Ship\+C\+A\+D\+::\+Crosscurves\+Data} \\*Crosscurves data }{\pageref{structShipCAD_1_1CrosscurvesData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1CurveFaceShader}{Ship\+C\+A\+D\+::\+Curve\+Face\+Shader} }{\pageref{classShipCAD_1_1CurveFaceShader}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1DeleteElementsCollection}{Ship\+C\+A\+D\+::\+Delete\+Elements\+Collection} }{\pageref{classShipCAD_1_1DeleteElementsCollection}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1DelftSeriesResistance}{Ship\+C\+A\+D\+::\+Delft\+Series\+Resistance} }{\pageref{structShipCAD_1_1DelftSeriesResistance}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1DevelopedPatch}{Ship\+C\+A\+D\+::\+Developed\+Patch} \\*Portion of developed surface }{\pageref{classShipCAD_1_1DevelopedPatch}}{}
\item\contentsline{section}{\hyperlink{structDraftData}{Draft\+Data} }{\pageref{structDraftData}}{}
\item\contentsline{section}{\hyperlink{structdraw__intersection}{draw\+\_\+intersection} }{\pageref{structdraw__intersection}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Entity}{Ship\+C\+A\+D\+::\+Entity} \\*Base class for all non-\/surface drawable elements }{\pageref{classShipCAD_1_1Entity}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ExtrudeEdgeDialogData}{Ship\+C\+A\+D\+::\+Extrude\+Edge\+Dialog\+Data} \\*Extrude edge dialog exchange }{\pageref{structShipCAD_1_1ExtrudeEdgeDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1FaceShader}{Ship\+C\+A\+D\+::\+Face\+Shader} }{\pageref{classShipCAD_1_1FaceShader}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1FileBuffer}{Ship\+C\+A\+D\+::\+File\+Buffer} \\*In-\/memory buffer for a binary file (F\+R\+E\+E!\+Ship format) }{\pageref{classShipCAD_1_1FileBuffer}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1FileReadError}{Ship\+C\+A\+D\+::\+File\+Read\+Error} }{\pageref{classShipCAD_1_1FileReadError}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1FileSaveError}{Ship\+C\+A\+D\+::\+File\+Save\+Error} }{\pageref{classShipCAD_1_1FileSaveError}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1FirstCPointPairPredicate}{Ship\+C\+A\+D\+::\+First\+C\+Point\+Pair\+Predicate} }{\pageref{structShipCAD_1_1FirstCPointPairPredicate}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1FirstEdgePointPredicate}{Ship\+C\+A\+D\+::\+First\+Edge\+Point\+Predicate} }{\pageref{structShipCAD_1_1FirstEdgePointPredicate}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1FirstFacePointPredicate}{Ship\+C\+A\+D\+::\+First\+Face\+Point\+Predicate} }{\pageref{structShipCAD_1_1FirstFacePointPredicate}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1FirstPointPairPredicate}{Ship\+C\+A\+D\+::\+First\+Point\+Pair\+Predicate} }{\pageref{structShipCAD_1_1FirstPointPairPredicate}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Flowline}{Ship\+C\+A\+D\+::\+Flowline} }{\pageref{classShipCAD_1_1Flowline}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1HydrostaticCalc}{Ship\+C\+A\+D\+::\+Hydrostatic\+Calc} \\*Initialize and execute Hydrostatics Data calculation for a waterplane }{\pageref{classShipCAD_1_1HydrostaticCalc}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1HydrostaticsData}{Ship\+C\+A\+D\+::\+Hydrostatics\+Data} \\*Hydrostatics Calculation results }{\pageref{structShipCAD_1_1HydrostaticsData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1InsertPlaneDialogData}{Ship\+C\+A\+D\+::\+Insert\+Plane\+Dialog\+Data} \\*Insert plane dialog exchange }{\pageref{structShipCAD_1_1InsertPlaneDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Intersection}{Ship\+C\+A\+D\+::\+Intersection} \\*List of curves intersecting hull }{\pageref{classShipCAD_1_1Intersection}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1IntersectionData}{Ship\+C\+A\+D\+::\+Intersection\+Data} \\*Record of geometry intersections }{\pageref{classShipCAD_1_1IntersectionData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1IntersectionFinder}{Ship\+C\+A\+D\+::\+Intersection\+Finder} \\*Find intersections in an Intersection\+Vector }{\pageref{structShipCAD_1_1IntersectionFinder}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1IntersectionsDialogData}{Ship\+C\+A\+D\+::\+Intersections\+Dialog\+Data} \\*Intersections dialog exchange }{\pageref{structShipCAD_1_1IntersectionsDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1IntersectionSorter}{Ship\+C\+A\+D\+::\+Intersection\+Sorter} \\*Sorting intersections in an Intersection\+Vector }{\pageref{structShipCAD_1_1IntersectionSorter}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1IntersectLayersDialogData}{Ship\+C\+A\+D\+::\+Intersect\+Layers\+Dialog\+Data} \\*Intersect layer dialog exchange }{\pageref{structShipCAD_1_1IntersectLayersDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1JPEGImage}{Ship\+C\+A\+D\+::\+J\+P\+E\+G\+Image} \\*Jpeg image as stored in Free!\+Ship binary file }{\pageref{structShipCAD_1_1JPEGImage}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1KAPERResistance}{Ship\+C\+A\+D\+::\+K\+A\+P\+E\+R\+Resistance} }{\pageref{structShipCAD_1_1KAPERResistance}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1LayerDialogData}{Ship\+C\+A\+D\+::\+Layer\+Dialog\+Data} \\*Layer properties dialog exchange }{\pageref{structShipCAD_1_1LayerDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1LayerProperties}{Ship\+C\+A\+D\+::\+Layer\+Properties} }{\pageref{structShipCAD_1_1LayerProperties}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1LayerPropertiesForDialog}{Ship\+C\+A\+D\+::\+Layer\+Properties\+For\+Dialog} \\*Layer properties }{\pageref{structShipCAD_1_1LayerPropertiesForDialog}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1LightedFaceShader}{Ship\+C\+A\+D\+::\+Lighted\+Face\+Shader} }{\pageref{classShipCAD_1_1LightedFaceShader}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1LineShader}{Ship\+C\+A\+D\+::\+Line\+Shader} }{\pageref{classShipCAD_1_1LineShader}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Marker}{Ship\+C\+A\+D\+::\+Marker} }{\pageref{classShipCAD_1_1Marker}}{}
\item\contentsline{section}{\hyperlink{structMinMaxData}{Min\+Max\+Data} }{\pageref{structMinMaxData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1MirrorDialogData}{Ship\+C\+A\+D\+::\+Mirror\+Dialog\+Data} \\*Mirror dialog exchange }{\pageref{structShipCAD_1_1MirrorDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1MonoFaceShader}{Ship\+C\+A\+D\+::\+Mono\+Face\+Shader} }{\pageref{classShipCAD_1_1MonoFaceShader}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1NewModelDialogData}{Ship\+C\+A\+D\+::\+New\+Model\+Dialog\+Data} \\*New model dialog exchange }{\pageref{structShipCAD_1_1NewModelDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1NURBSurface}{Ship\+C\+A\+D\+::\+N\+U\+R\+B\+Surface} }{\pageref{classShipCAD_1_1NURBSurface}}{}
\item\contentsline{section}{\hyperlink{classOpenGLWindow}{Open\+G\+L\+Window} }{\pageref{classOpenGLWindow}}{}
\item\contentsline{section}{\hyperlink{classOrderedPointMap}{Ordered\+Point\+Map} \\*Collection of Subdivision\+Control\+Points and associated index }{\pageref{classOrderedPointMap}}{}
\item\contentsline{section}{\hyperlink{classOrderedPointMapIterator}{Ordered\+Point\+Map\+Iterator} \\*Iterator for \hyperlink{classOrderedPointMap}{Ordered\+Point\+Map} }{\pageref{classOrderedPointMapIterator}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ParseError}{Ship\+C\+A\+D\+::\+Parse\+Error} }{\pageref{classShipCAD_1_1ParseError}}{}
\item\contentsline{section}{\hyperlink{structPatchIntersection}{Patch\+Intersection} }{\pageref{structPatchIntersection}}{}
\item\contentsline{section}{\hyperlink{structPatchPointPred}{Patch\+Point\+Pred} }{\pageref{structPatchPointPred}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1PatchPoints}{Ship\+C\+A\+D\+::\+Patch\+Points} \\*Store \hyperlink{classShipCAD_1_1SubdivisionPoint}{Subdivision\+Point} to unrolled point mapping }{\pageref{structShipCAD_1_1PatchPoints}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1PickRay}{Ship\+C\+A\+D\+::\+Pick\+Ray} \\*Pick ray (line) }{\pageref{structShipCAD_1_1PickRay}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Plane}{Ship\+C\+A\+D\+::\+Plane} }{\pageref{classShipCAD_1_1Plane}}{}
\item\contentsline{section}{\hyperlink{structPointData}{Point\+Data} }{\pageref{structPointData}}{}
\item\contentsline{section}{\hyperlink{classPointerVector}{Pointer\+Vector$<$ T $>$} }{\pageref{classPointerVector}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1PointGrid}{Ship\+C\+A\+D\+::\+Point\+Grid} }{\pageref{structShipCAD_1_1PointGrid}}{}
\item\contentsline{section}{\hyperlink{classPool}{Pool$<$ T $>$} }{\pageref{classPool}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Preferences}{Ship\+C\+A\+D\+::\+Preferences} }{\pageref{classShipCAD_1_1Preferences}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1PreferencesDialogData}{Ship\+C\+A\+D\+::\+Preferences\+Dialog\+Data} \\*\hyperlink{classShipCAD_1_1Preferences}{Preferences} dialog exchange }{\pageref{structShipCAD_1_1PreferencesDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ProjectSettings}{Ship\+C\+A\+D\+::\+Project\+Settings} }{\pageref{classShipCAD_1_1ProjectSettings}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1ProjectSettingsDialogData}{Ship\+C\+A\+D\+::\+Project\+Settings\+Dialog\+Data} \\*Project settings dialog exchange }{\pageref{structShipCAD_1_1ProjectSettingsDialogData}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1RotateDialogData}{Ship\+C\+A\+D\+::\+Rotate\+Dialog\+Data} \\*Rotate dialog exchange }{\pageref{structShipCAD_1_1RotateDialogData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Shader}{Ship\+C\+A\+D\+::\+Shader} }{\pageref{classShipCAD_1_1Shader}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ShipCADModel}{Ship\+C\+A\+D\+::\+Ship\+C\+A\+D\+Model} }{\pageref{classShipCAD_1_1ShipCADModel}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Spline}{Ship\+C\+A\+D\+::\+Spline} \\*\hyperlink{classShipCAD_1_1Spline}{Spline} entity used in intersections etc }{\pageref{classShipCAD_1_1Spline}}{}
\item\contentsline{section}{\hyperlink{structSplineExtents}{Spline\+Extents} }{\pageref{structSplineExtents}}{}
\item\contentsline{section}{\hyperlink{structStationAreaCalculation}{Station\+Area\+Calculation} }{\pageref{structStationAreaCalculation}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionBase}{Ship\+C\+A\+D\+::\+Subdivision\+Base} \\*Base class for all subdivision points, edges and faces }{\pageref{classShipCAD_1_1SubdivisionBase}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionControlCurve}{Ship\+C\+A\+D\+::\+Subdivision\+Control\+Curve} }{\pageref{classShipCAD_1_1SubdivisionControlCurve}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionControlEdge}{Ship\+C\+A\+D\+::\+Subdivision\+Control\+Edge} }{\pageref{classShipCAD_1_1SubdivisionControlEdge}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionControlFace}{Ship\+C\+A\+D\+::\+Subdivision\+Control\+Face} }{\pageref{classShipCAD_1_1SubdivisionControlFace}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionControlPoint}{Ship\+C\+A\+D\+::\+Subdivision\+Control\+Point} \\*3D Control point }{\pageref{classShipCAD_1_1SubdivisionControlPoint}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionEdge}{Ship\+C\+A\+D\+::\+Subdivision\+Edge} }{\pageref{classShipCAD_1_1SubdivisionEdge}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionFace}{Ship\+C\+A\+D\+::\+Subdivision\+Face} }{\pageref{classShipCAD_1_1SubdivisionFace}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionLayer}{Ship\+C\+A\+D\+::\+Subdivision\+Layer} \\*Layer, collection of Subdivision\+Control\+Faces }{\pageref{classShipCAD_1_1SubdivisionLayer}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionPoint}{Ship\+C\+A\+D\+::\+Subdivision\+Point} \\*3D Point }{\pageref{classShipCAD_1_1SubdivisionPoint}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1SubdivisionSurface}{Ship\+C\+A\+D\+::\+Subdivision\+Surface} \\*Subdivision Surface }{\pageref{classShipCAD_1_1SubdivisionSurface}}{}
\item\contentsline{section}{\hyperlink{structShipCAD_1_1SurfaceCheckResult}{Ship\+C\+A\+D\+::\+Surface\+Check\+Result} \\*Used to collect statistics when doing the model check }{\pageref{structShipCAD_1_1SurfaceCheckResult}}{}
\item\contentsline{section}{\hyperlink{structSurfIntersectionData}{Surf\+Intersection\+Data} }{\pageref{structSurfIntersectionData}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1TempVarChange}{Ship\+C\+A\+D\+::\+Temp\+Var\+Change$<$ T $>$} }{\pageref{classShipCAD_1_1TempVarChange}}{}
\item\contentsline{section}{\hyperlink{structTriangle}{Triangle} }{\pageref{structTriangle}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1UndoObject}{Ship\+C\+A\+D\+::\+Undo\+Object} }{\pageref{classShipCAD_1_1UndoObject}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Viewport}{Ship\+C\+A\+D\+::\+Viewport} }{\pageref{classShipCAD_1_1Viewport}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportContextEvent}{Ship\+C\+A\+D\+::\+Viewport\+Context\+Event} }{\pageref{classShipCAD_1_1ViewportContextEvent}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportView}{Ship\+C\+A\+D\+::\+Viewport\+View} \\*\hyperlink{classShipCAD_1_1Viewport}{Viewport} matrices }{\pageref{classShipCAD_1_1ViewportView}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportViewBodyplan}{Ship\+C\+A\+D\+::\+Viewport\+View\+Bodyplan} \\*Class to calculate view, world matrices and operations using those for a Bodyplan viewport }{\pageref{classShipCAD_1_1ViewportViewBodyplan}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportViewPerspective}{Ship\+C\+A\+D\+::\+Viewport\+View\+Perspective} \\*Calculate view, world matrices and operations for a Perspective viewport }{\pageref{classShipCAD_1_1ViewportViewPerspective}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportViewPlan}{Ship\+C\+A\+D\+::\+Viewport\+View\+Plan} \\*Calculate view, world matrices and operations for a Plan viewport }{\pageref{classShipCAD_1_1ViewportViewPlan}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1ViewportViewProfile}{Ship\+C\+A\+D\+::\+Viewport\+View\+Profile} \\*Calculate view, world matrices and operations for a Profile viewport }{\pageref{classShipCAD_1_1ViewportViewProfile}}{}
\item\contentsline{section}{\hyperlink{classShipCAD_1_1Visibility}{Ship\+C\+A\+D\+::\+Visibility} \\*Settings for visibility of different features }{\pageref{classShipCAD_1_1Visibility}}{}
\item\contentsline{section}{\hyperlink{structVolumeCalc}{Volume\+Calc} \\*Calculate the volume of underwater body }{\pageref{structVolumeCalc}}{}
\item\contentsline{section}{\hyperlink{structZebraIntersection}{Zebra\+Intersection} }{\pageref{structZebraIntersection}}{}
\end{DoxyCompactList}
